package cn.cqie.attendance.manager.pojo;

import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * @author king james
 * @create 2021-07-07-{TIME}
 */
@JsonInclude(value= JsonInclude.Include.NON_NULL)
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="StudentLeave对象", description="")
public class AdminStudentLeave extends Model {

    @ApiModelProperty(value = "学生id")
    private int stuId;//学生id

    @ApiModelProperty(value = "学生姓名")
    private String stuName;

    @ApiModelProperty(value = "学生学号")
    private String stuNumber;

    @ApiModelProperty(value = "请假id")
    private int leaveId;

    @ApiModelProperty(value = "请假主题")
    private String leaveTheme;

    @ApiModelProperty(value = "请假原因")
    private int leaveReason;

    @ApiModelProperty(value = "请假说明")
    private String reasonDetail;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @ApiModelProperty(value = "开始时间")
    private Date startTime;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @ApiModelProperty(value = "结束时间")
    private Date endTime;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @ApiModelProperty(value = "申请时间")
    private Date applyTime;

    @ApiModelProperty(value = "审批时间")
    private Date transitTime;

    @ApiModelProperty(value = "班级名")
    private String className;

    @ApiModelProperty(value = "学院名")
    private String collegeName;

    @ApiModelProperty(value = "年级名")
    private String gradeName;

    @ApiModelProperty(value = "专业名")
    private String majorName;

    @ApiModelProperty(value = "小组名")
    private String groupName;

    @ApiModelProperty(value = "班主任（审批人）")
    private String headMaster;

    @ApiModelProperty(value = "附件地址")
    private String address;

    @ApiModelProperty(value = "请假审批状态")
    private int leaveStatus;


}
